package com.qr.eureka;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

/**
 * 用spring boot 搭建的项目，在配置文件不连接数据库启动项目会报错
 *
 * 原因在于
 *
 * spring boot默认会加载
 * org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
 *
 * 类，DataSourceAutoConfiguration类使用了@Configuration注解向spring注入了dataSource bean。
 * 因为工程中没有关于dataSource相关的配置信息，当spring创建dataSource bean因缺少相关的信息就会报错。
 *
 * 解决方法
 * 在Application类上增加：
 * @EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
 *
 */
//@SpringBootApplication
//声明是eureka注册中心
@EnableEurekaServer
//在没有配置数据源的情况下，启动类exclude= {DataSourceAutoConfiguration.class}排除加载数据源
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class,args);
    }
}
